<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>dist_ellipse_contour_points_xld [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_xld.html">XLD</a> / <a href="toc_xld_features.html">特征</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">dist_ellipse_contour_points_xld</span><span data-if="c" style="display:none;">T_dist_ellipse_contour_points_xld</span><span data-if="cpp" style="display:none;">DistEllipseContourPointsXld</span><span data-if="dotnet" style="display:none;">DistEllipseContourPointsXld</span><span data-if="python" style="display:none;">dist_ellipse_contour_points_xld</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">dist_ellipse_contour_points_xld</span><span data-if="c" style="display:none;">T_dist_ellipse_contour_points_xld</span><span data-if="cpp" style="display:none;">DistEllipseContourPointsXld</span><span data-if="dotnet" style="display:none;">DistEllipseContourPointsXld</span><span data-if="python" style="display:none;">dist_ellipse_contour_points_xld</span></code> — Compute the distances of all contour points to an ellipse.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>dist_ellipse_contour_points_xld</b>(<a href="#Contour"><i>Contour</i></a> :  : <a href="#DistanceMode"><i>DistanceMode</i></a>, <a href="#ClippingEndPoints"><i>ClippingEndPoints</i></a>, <a href="#Row"><i>Row</i></a>, <a href="#Column"><i>Column</i></a>, <a href="#Phi"><i>Phi</i></a>, <a href="#Radius1"><i>Radius1</i></a>, <a href="#Radius2"><i>Radius2</i></a> : <a href="#Distances"><i>Distances</i></a>)</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_dist_ellipse_contour_points_xld</b>(const Hobject <a href="#Contour"><i>Contour</i></a>, const Htuple <a href="#DistanceMode"><i>DistanceMode</i></a>, const Htuple <a href="#ClippingEndPoints"><i>ClippingEndPoints</i></a>, const Htuple <a href="#Row"><i>Row</i></a>, const Htuple <a href="#Column"><i>Column</i></a>, const Htuple <a href="#Phi"><i>Phi</i></a>, const Htuple <a href="#Radius1"><i>Radius1</i></a>, const Htuple <a href="#Radius2"><i>Radius2</i></a>, Htuple* <a href="#Distances"><i>Distances</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>DistEllipseContourPointsXld</b>(const HObject&amp; <a href="#Contour"><i>Contour</i></a>, const HTuple&amp; <a href="#DistanceMode"><i>DistanceMode</i></a>, const HTuple&amp; <a href="#ClippingEndPoints"><i>ClippingEndPoints</i></a>, const HTuple&amp; <a href="#Row"><i>Row</i></a>, const HTuple&amp; <a href="#Column"><i>Column</i></a>, const HTuple&amp; <a href="#Phi"><i>Phi</i></a>, const HTuple&amp; <a href="#Radius1"><i>Radius1</i></a>, const HTuple&amp; <a href="#Radius2"><i>Radius2</i></a>, HTuple* <a href="#Distances"><i>Distances</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HXLDCont.html">HXLDCont</a>::<b>DistEllipseContourPointsXld</b>(const HString&amp; <a href="#DistanceMode"><i>DistanceMode</i></a>, Hlong <a href="#ClippingEndPoints"><i>ClippingEndPoints</i></a>, double <a href="#Row"><i>Row</i></a>, double <a href="#Column"><i>Column</i></a>, double <a href="#Phi"><i>Phi</i></a>, double <a href="#Radius1"><i>Radius1</i></a>, double <a href="#Radius2"><i>Radius2</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HXLDCont.html">HXLDCont</a>::<b>DistEllipseContourPointsXld</b>(const char* <a href="#DistanceMode"><i>DistanceMode</i></a>, Hlong <a href="#ClippingEndPoints"><i>ClippingEndPoints</i></a>, double <a href="#Row"><i>Row</i></a>, double <a href="#Column"><i>Column</i></a>, double <a href="#Phi"><i>Phi</i></a>, double <a href="#Radius1"><i>Radius1</i></a>, double <a href="#Radius2"><i>Radius2</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HXLDCont.html">HXLDCont</a>::<b>DistEllipseContourPointsXld</b>(const wchar_t* <a href="#DistanceMode"><i>DistanceMode</i></a>, Hlong <a href="#ClippingEndPoints"><i>ClippingEndPoints</i></a>, double <a href="#Row"><i>Row</i></a>, double <a href="#Column"><i>Column</i></a>, double <a href="#Phi"><i>Phi</i></a>, double <a href="#Radius1"><i>Radius1</i></a>, double <a href="#Radius2"><i>Radius2</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>DistEllipseContourPointsXld</b>(<a href="HObject.html">HObject</a> <a href="#Contour"><i>contour</i></a>, <a href="HTuple.html">HTuple</a> <a href="#DistanceMode"><i>distanceMode</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ClippingEndPoints"><i>clippingEndPoints</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Row"><i>row</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Column"><i>column</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Phi"><i>phi</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Radius1"><i>radius1</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Radius2"><i>radius2</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#Distances"><i>distances</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HXLDCont.html">HXLDCont</a>.<b>DistEllipseContourPointsXld</b>(string <a href="#DistanceMode"><i>distanceMode</i></a>, int <a href="#ClippingEndPoints"><i>clippingEndPoints</i></a>, double <a href="#Row"><i>row</i></a>, double <a href="#Column"><i>column</i></a>, double <a href="#Phi"><i>phi</i></a>, double <a href="#Radius1"><i>radius1</i></a>, double <a href="#Radius2"><i>radius2</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>dist_ellipse_contour_points_xld</b>(<a href="#Contour"><i>contour</i></a>: HObject, <a href="#DistanceMode"><i>distance_mode</i></a>: str, <a href="#ClippingEndPoints"><i>clipping_end_points</i></a>: int, <a href="#Row"><i>row</i></a>: float, <a href="#Column"><i>column</i></a>: float, <a href="#Phi"><i>phi</i></a>: float, <a href="#Radius1"><i>radius_1</i></a>: float, <a href="#Radius2"><i>radius_2</i></a>: float) -&gt; Sequence[float]</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p>该算子 <code><span data-if="hdevelop" style="display:inline">dist_ellipse_contour_points_xld</span><span data-if="c" style="display:none">dist_ellipse_contour_points_xld</span><span data-if="cpp" style="display:none">DistEllipseContourPointsXld</span><span data-if="com" style="display:none">DistEllipseContourPointsXld</span><span data-if="dotnet" style="display:none">DistEllipseContourPointsXld</span><span data-if="python" style="display:none">dist_ellipse_contour_points_xld</span></code> determines the
distances between points of a contour <a href="#Contour"><i><code><span data-if="hdevelop" style="display:inline">Contour</span><span data-if="c" style="display:none">Contour</span><span data-if="cpp" style="display:none">Contour</span><span data-if="com" style="display:none">Contour</span><span data-if="dotnet" style="display:none">contour</span><span data-if="python" style="display:none">contour</span></code></i></a> and an ellipse
specified by the center (<a href="#Row"><i><code><span data-if="hdevelop" style="display:inline">Row</span><span data-if="c" style="display:none">Row</span><span data-if="cpp" style="display:none">Row</span><span data-if="com" style="display:none">Row</span><span data-if="dotnet" style="display:none">row</span><span data-if="python" style="display:none">row</span></code></i></a>, <a href="#Column"><i><code><span data-if="hdevelop" style="display:inline">Column</span><span data-if="c" style="display:none">Column</span><span data-if="cpp" style="display:none">Column</span><span data-if="com" style="display:none">Column</span><span data-if="dotnet" style="display:none">column</span><span data-if="python" style="display:none">column</span></code></i></a>), the
orientation of the main axis <a href="#Phi"><i><code><span data-if="hdevelop" style="display:inline">Phi</span><span data-if="c" style="display:none">Phi</span><span data-if="cpp" style="display:none">Phi</span><span data-if="com" style="display:none">Phi</span><span data-if="dotnet" style="display:none">phi</span><span data-if="python" style="display:none">phi</span></code></i></a>,
the length of the larger half axis <a href="#Radius1"><i><code><span data-if="hdevelop" style="display:inline">Radius1</span><span data-if="c" style="display:none">Radius1</span><span data-if="cpp" style="display:none">Radius1</span><span data-if="com" style="display:none">Radius1</span><span data-if="dotnet" style="display:none">radius1</span><span data-if="python" style="display:none">radius_1</span></code></i></a>, and the
length of the smaller half axis <a href="#Radius2"><i><code><span data-if="hdevelop" style="display:inline">Radius2</span><span data-if="c" style="display:none">Radius2</span><span data-if="cpp" style="display:none">Radius2</span><span data-if="com" style="display:none">Radius2</span><span data-if="dotnet" style="display:none">radius2</span><span data-if="python" style="display:none">radius_2</span></code></i></a>.
</p>
<p>The distance measure is the geometric distance, sometimes also called
orthogonal distance. The distances <a href="#Distances"><i><code><span data-if="hdevelop" style="display:inline">Distances</span><span data-if="c" style="display:none">Distances</span><span data-if="cpp" style="display:none">Distances</span><span data-if="com" style="display:none">Distances</span><span data-if="dotnet" style="display:none">distances</span><span data-if="python" style="display:none">distances</span></code></i></a> are returned for
all points of the contour.
Normally, the distance is a positive value. In this case
<a href="#DistanceMode"><i><code><span data-if="hdevelop" style="display:inline">DistanceMode</span><span data-if="c" style="display:none">DistanceMode</span><span data-if="cpp" style="display:none">DistanceMode</span><span data-if="com" style="display:none">DistanceMode</span><span data-if="dotnet" style="display:none">distanceMode</span><span data-if="python" style="display:none">distance_mode</span></code></i></a> equal to <i><span data-if="hdevelop" style="display:inline">'unsigned'</span><span data-if="c" style="display:none">"unsigned"</span><span data-if="cpp" style="display:none">"unsigned"</span><span data-if="com" style="display:none">"unsigned"</span><span data-if="dotnet" style="display:none">"unsigned"</span><span data-if="python" style="display:none">"unsigned"</span></i> must be chosen.
If this option is switched to <i><span data-if="hdevelop" style="display:inline">'signed'</span><span data-if="c" style="display:none">"signed"</span><span data-if="cpp" style="display:none">"signed"</span><span data-if="com" style="display:none">"signed"</span><span data-if="dotnet" style="display:none">"signed"</span><span data-if="python" style="display:none">"signed"</span></i> the distances can take
positive or negative sign, depending on whether the contour points lie
outside or inside the ellipse respectively.
</p>
<p>Because of artifacts in the preprocessing, the start and end points
of a contour might be faulty. In this case, 该算子
<a href="fit_ellipse_contour_xld.html"><code><span data-if="hdevelop" style="display:inline">fit_ellipse_contour_xld</span><span data-if="c" style="display:none">fit_ellipse_contour_xld</span><span data-if="cpp" style="display:none">FitEllipseContourXld</span><span data-if="com" style="display:none">FitEllipseContourXld</span><span data-if="dotnet" style="display:none">FitEllipseContourXld</span><span data-if="python" style="display:none">fit_ellipse_contour_xld</span></code></a> is typically called with the parameter
<a href="#ClippingEndPoints"><i><code><span data-if="hdevelop" style="display:inline">ClippingEndPoints</span><span data-if="c" style="display:none">ClippingEndPoints</span><span data-if="cpp" style="display:none">ClippingEndPoints</span><span data-if="com" style="display:none">ClippingEndPoints</span><span data-if="dotnet" style="display:none">clippingEndPoints</span><span data-if="python" style="display:none">clipping_end_points</span></code></i></a> set to a value greater than zero to exclude
points at the beginning and the end of the contour from the computation.
In order to get the geometric distances of the same set of points as used
in the fitting process <a href="#ClippingEndPoints"><i><code><span data-if="hdevelop" style="display:inline">ClippingEndPoints</span><span data-if="c" style="display:none">ClippingEndPoints</span><span data-if="cpp" style="display:none">ClippingEndPoints</span><span data-if="com" style="display:none">ClippingEndPoints</span><span data-if="dotnet" style="display:none">clippingEndPoints</span><span data-if="python" style="display:none">clipping_end_points</span></code></i></a> should take
the same value.
</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="Contour" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Contour</span><span data-if="c" style="display:none">Contour</span><span data-if="cpp" style="display:none">Contour</span><span data-if="com" style="display:none">Contour</span><span data-if="dotnet" style="display:none">contour</span><span data-if="python" style="display:none">contour</span></code></b> (input_object)  </span><span>xld_cont <code>→</code> <span data-if="hdevelop" style="display:inline">object</span><span data-if="dotnet" style="display:none"><a href="HXLDCont.html">HXLDCont</a></span><span data-if="python" style="display:none">HObject</span><span data-if="cpp" style="display:none"><a href="HXLDCont.html">HXLDCont</a></span><span data-if="c" style="display:none">Hobject</span></span>
</div>
<p class="pardesc">Input contours.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="DistanceMode" class="parname"><b><code><span data-if="hdevelop" style="display:inline">DistanceMode</span><span data-if="c" style="display:none">DistanceMode</span><span data-if="cpp" style="display:none">DistanceMode</span><span data-if="com" style="display:none">DistanceMode</span><span data-if="dotnet" style="display:none">distanceMode</span><span data-if="python" style="display:none">distance_mode</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Mode for unsigned or signed distance values.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'unsigned'</span>
    <span data-if="c" style="display:none">"unsigned"</span>
    <span data-if="cpp" style="display:none">"unsigned"</span>
    <span data-if="com" style="display:none">"unsigned"</span>
    <span data-if="dotnet" style="display:none">"unsigned"</span>
    <span data-if="python" style="display:none">"unsigned"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'signed'</span><span data-if="c" style="display:none">"signed"</span><span data-if="cpp" style="display:none">"signed"</span><span data-if="com" style="display:none">"signed"</span><span data-if="dotnet" style="display:none">"signed"</span><span data-if="python" style="display:none">"signed"</span>, <span data-if="hdevelop" style="display:inline">'unsigned'</span><span data-if="c" style="display:none">"unsigned"</span><span data-if="cpp" style="display:none">"unsigned"</span><span data-if="com" style="display:none">"unsigned"</span><span data-if="dotnet" style="display:none">"unsigned"</span><span data-if="python" style="display:none">"unsigned"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ClippingEndPoints" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ClippingEndPoints</span><span data-if="c" style="display:none">ClippingEndPoints</span><span data-if="cpp" style="display:none">ClippingEndPoints</span><span data-if="com" style="display:none">ClippingEndPoints</span><span data-if="dotnet" style="display:none">clippingEndPoints</span><span data-if="python" style="display:none">clipping_end_points</span></code></b> (input_control)  </span><span>integer <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">int</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Number of points at the beginning and the end of the
contours to be ignored for the computation of
distances.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>ClippingEndPoints &gt;= 0</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Row" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Row</span><span data-if="c" style="display:none">Row</span><span data-if="cpp" style="display:none">Row</span><span data-if="com" style="display:none">Row</span><span data-if="dotnet" style="display:none">row</span><span data-if="python" style="display:none">row</span></code></b> (input_control)  </span><span>ellipse.center.y <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Row coordinate of the center of the ellipse.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Column" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Column</span><span data-if="c" style="display:none">Column</span><span data-if="cpp" style="display:none">Column</span><span data-if="com" style="display:none">Column</span><span data-if="dotnet" style="display:none">column</span><span data-if="python" style="display:none">column</span></code></b> (input_control)  </span><span>ellipse.center.x <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Column coordinate of the center of the ellipse.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Phi" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Phi</span><span data-if="c" style="display:none">Phi</span><span data-if="cpp" style="display:none">Phi</span><span data-if="com" style="display:none">Phi</span><span data-if="dotnet" style="display:none">phi</span><span data-if="python" style="display:none">phi</span></code></b> (input_control)  </span><span>ellipse.angle.rad <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Orientation of the main axis in radian.</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>Phi &gt;= 0 &amp;&amp; Phi &lt;= 6.283185307</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Radius1" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Radius1</span><span data-if="c" style="display:none">Radius1</span><span data-if="cpp" style="display:none">Radius1</span><span data-if="com" style="display:none">Radius1</span><span data-if="dotnet" style="display:none">radius1</span><span data-if="python" style="display:none">radius_1</span></code></b> (input_control)  </span><span>ellipse.radius1 <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Length of the larger half axis.</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>Radius1 &gt; 0</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Radius2" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Radius2</span><span data-if="c" style="display:none">Radius2</span><span data-if="cpp" style="display:none">Radius2</span><span data-if="com" style="display:none">Radius2</span><span data-if="dotnet" style="display:none">radius2</span><span data-if="python" style="display:none">radius_2</span></code></b> (input_control)  </span><span>ellipse.radius2 <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Length of the smaller half axis.</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>Radius2 &gt;= 0 &amp;&amp; Radius2 &lt;= Radius1</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Distances" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Distances</span><span data-if="c" style="display:none">Distances</span><span data-if="cpp" style="display:none">Distances</span><span data-if="com" style="display:none">Distances</span><span data-if="dotnet" style="display:none">distances</span><span data-if="python" style="display:none">distances</span></code></b> (output_control)  </span><span>real-array <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Distances of the contour points to the ellipse.</p>
</div>
<h2 id="sec_result">结果</h2>
<p><code><span data-if="hdevelop" style="display:inline">dist_ellipse_contour_points_xld</span><span data-if="c" style="display:none">dist_ellipse_contour_points_xld</span><span data-if="cpp" style="display:none">DistEllipseContourPointsXld</span><span data-if="com" style="display:none">DistEllipseContourPointsXld</span><span data-if="dotnet" style="display:none">DistEllipseContourPointsXld</span><span data-if="python" style="display:none">dist_ellipse_contour_points_xld</span></code> returns <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
     if all parameter
values are correct. 如有必要，将引发异常。</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="fit_ellipse_contour_xld.html"><span data-if="hdevelop" style="display:inline">fit_ellipse_contour_xld</span><span data-if="c" style="display:none">fit_ellipse_contour_xld</span><span data-if="cpp" style="display:none">FitEllipseContourXld</span><span data-if="com" style="display:none">FitEllipseContourXld</span><span data-if="dotnet" style="display:none">FitEllipseContourXld</span><span data-if="python" style="display:none">fit_ellipse_contour_xld</span></a></code>
</p>
<h2 id="sec_alternatives">可替代算子</h2>
<p>
<code><a href="dist_ellipse_contour_xld.html"><span data-if="hdevelop" style="display:inline">dist_ellipse_contour_xld</span><span data-if="c" style="display:none">dist_ellipse_contour_xld</span><span data-if="cpp" style="display:none">DistEllipseContourXld</span><span data-if="com" style="display:none">DistEllipseContourXld</span><span data-if="dotnet" style="display:none">DistEllipseContourXld</span><span data-if="python" style="display:none">dist_ellipse_contour_xld</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Foundation</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
